home *** CD-ROM | disk | FTP | other *** search
- window.onbeforeunload=Window_BeforeUnload;
- var gsPersistedLang = null;
- var selObj = null;
-
- function InitDevLangFilter()
- {
-
- var currLang = null;
- if (typeof(obj_cook) != 'undefined' && obj_cook.object)
- currLang = obj_cook.getValue("lang");
- else
- currLang = GetCookie("lang")
-
- gsPersistedLang = currLang;
- if (currLang == null)
- currLang = "(all)";
-
- var supported = false;
-
- // Retrieve the selectLanguage SELECT
- selObj = document.getElementById("selectLanguage");
- if (selObj != null)
- for (i = 0; i < selObj.options.length; i++)
- if (selObj.options(i).value == currLang)
- {
- supported = true;
- break;
- }
-
- if (supported == false)
- currLang = "(all)";
-
- if (selObj != null)
- {
- for (i = 0; i < selObj.options.length; i++)
- {
- if (selObj.options(i).value == currLang)
- {
- selObj.options(i).selected = true;
- break;
- }
- }
- }
- ChangeLanguage2(currLang);
- }
-
- function Window_BeforeUnload()
- {
- if(selObj == null)
- return;
-
- if (typeof(obj_cook) != 'undefined' && obj_cook.object)
- obj_cook.putValue("lang", gsPersistedLang);
- else
- {
- var expiration = new Date(3000, 1, 1);
- DeleteCookie("lang");
- SetCookie("lang", gsPersistedLang, expiration, "/");
- }
- }
-
- function ChangeLanguage()
- {
- var langIndex = selObj.selectedIndex;
- var lang = selObj.options[selObj.selectedIndex].value;
- gsPersistedLang = lang;
- ChangeLanguage2(lang);
- }
-
- function ChangeLanguage2(lang)
- {
- var oRows = document.getElementsByTagName("TR");
- for(j = 0; j < oRows.length; ++j)
- {
- var oRow = oRows[j];
- if(oRow.id.indexOf("_syntax") != -1)
- {
- {
- if(oRow.id == lang + "_syntax" || lang == "(all)")
- oRow.style.display = "block";
- else
- oRow.style.display = "none";
- }
- }
- }
-
- var oSpans = document.getElementsByTagName("SPAN");
- for (j = 0; j < oSpans.length; ++j)
- {
- var oSpan = oSpans[j];
- var dLang = oSpan.getAttribute("DEVLANG");
- if (dLang != null)
- {
- // Span tag can now contain multiple devlang values separated by a
- // semicolon (ie: <span devlang="cs;xaml">). This update checks to see if
- // the current language matches any of languages specified in the devlang
- // attribute.
- var aLang = dLang.split(';');
-
- for(i = 0; i < aLang.length; i++)
- {
- if (aLang[i] == lang || lang == "(all)")
- {
- oSpan.style.display = "block";
- break;
- }
- else
- oSpan.style.display = "none";
- }
- }
- }
- }
-
- function SetCookie(name, value, expires, path, domain, secure)
- {
- document.cookie = name + "=" + escape(value) +
- ((expires == null) ? "" : "; expires=" + expires.toGMTString()) +
- ((path == null) ? "" : "; path=" + escape(path)) +
- ((domain == null) ? "" : "; domain=" + escape(domain)) +
- ((secure == null) ? "" : "; secure");
- }
-
- function GetCookie(name)
- {
- var cname = name + "=";
- var dc = document.cookie;
-
- if (dc.length > 0)
- {
- begin = dc.indexOf(cname);
- if (begin != -1)
- {
- begin += cname.length;
- end = dc.indexOf(";", begin);
- if (end == -1) end = dc.length;
- return unescape(dc.substring(begin, end));
- }
- }
-
- return null;
- }
-
- function DeleteCookie (name,path,domain)
- {
- if (GetCookie(name))
- {
- var expires = new Date(1970, 1, 1);
- document.cookie = name + "=" + ((path == null) ? "" : "; path=" + path) + ((domain == null) ? "" : "; domain=" + domain) + "; expires=" + expires.toGMTString();
- }
- }
-